<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.7"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DGRv2: ns3::DGRCandidateQueue Class Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../resize.js"></script>
<script type="text/javascript" src="../../navtreedata.js"></script>
<script type="text/javascript" src="../../navtree.js"></script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr id="projectrow">
  <td id="projectalign">
   <div id="projectname">DGRv2<span id="projectnumber">&#160;2-dev</span>
   </div>
   <div id="projectbrief">A Delay-Guaranteed Routing Protocol model in ns-3</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.7 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
  initMenu('../../',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dd/d17/classns3_1_1_d_g_r_candidate_queue.html','../../'); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pri-types">Private Types</a> &#124;
<a href="#pri-methods">Private Member Functions</a> &#124;
<a href="#pri-static-methods">Static Private Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="../../de/d55/classns3_1_1_d_g_r_candidate_queue-members.html">List of all members</a>  </div>
  <div class="headertitle"><div class="title">ns3::DGRCandidateQueue Class Reference</div></div>
</div><!--header-->
<div class="contents">

<p>A Candidate Queue used in routing calculations.  
 <a href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="../../df/d86/dgr-candidate-queue_8h_source.html">dgr-candidate-queue.h</a>&gt;</code></p>
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-0-trigger" src="../../closed.png" alt="+"/> Collaboration diagram for ns3::DGRCandidateQueue:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="../../d2/d6a/classns3_1_1_d_g_r_candidate_queue__coll__graph.png" border="0" usemap="#ans3_1_1_d_g_r_candidate_queue_coll__map" alt="Collaboration graph"/></div>
<map name="ans3_1_1_d_g_r_candidate_queue_coll__map" id="ans3_1_1_d_g_r_candidate_queue_coll__map">
<area shape="rect" title="A Candidate Queue used in routing calculations." alt="" coords="1481,569,1672,594"/>
<area shape="rect" title=" " alt="" coords="1117,523,1300,549"/>
<area shape="poly" title=" " alt="" coords="1249,552,1285,566,1325,577,1404,586,1481,586,1481,592,1404,591,1323,583,1283,572,1247,557"/>
<area shape="rect" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html" title="Vertex used in shortest path first (SPF) computations." alt="" coords="1515,429,1639,454"/>
<area shape="poly" title=" " alt="" coords="1313,519,1384,505,1457,487,1505,470,1547,452,1549,457,1507,475,1458,492,1386,510,1314,524"/>
<area shape="poly" title=" " alt="" coords="1557,466,1515,505,1488,523,1458,537,1416,548,1373,553,1291,551,1291,546,1373,548,1415,543,1456,532,1485,519,1511,501,1553,462"/>
<area shape="rect" title=" " alt="" coords="1161,17,1256,42"/>
<area shape="poly" title=" " alt="" coords="1270,18,1315,16,1365,20,1415,33,1438,45,1459,59,1498,102,1528,152,1549,206,1564,261,1573,314,1577,362,1579,429,1573,429,1572,362,1567,315,1559,262,1544,208,1523,154,1494,105,1456,63,1435,49,1413,38,1364,25,1315,21,1270,23"/>
<area shape="rect" title=" " alt="" coords="5,305,108,330"/>
<area shape="poly" title=" " alt="" coords="69,291,107,232,134,197,166,162,203,129,244,102,289,84,336,77,1210,77,1248,81,1283,90,1317,104,1349,123,1408,171,1458,228,1500,288,1533,346,1573,427,1568,430,1529,348,1495,291,1454,232,1404,175,1346,128,1315,109,1282,95,1247,86,1210,83,337,83,290,89,246,107,206,133,170,166,138,201,111,235,74,294"/>
<area shape="rect" href="../../d5/d4d/classns3_1_1_d_g_r_routing_l_s_a.html" title="a Link State Advertisement (LSA) for a router, used in global routing." alt="" coords="1130,294,1287,319"/>
<area shape="poly" title=" " alt="" coords="121,307,132,307,420,296,704,294,1130,301,1130,307,704,300,421,302,132,312,122,313"/>
<area shape="rect" href="../../de/d53/classns3_1_1_d_g_r_routing_link_record.html" title="A single link record for a link state advertisement." alt="" coords="236,407,440,433"/>
<area shape="poly" title=" " alt="" coords="77,339,102,366,133,388,183,406,236,416,235,421,182,411,131,393,98,370,73,343"/>
<area shape="rect" title=" " alt="" coords="691,330,871,355"/>
<area shape="poly" title=" " alt="" coords="122,317,236,321,690,337,690,342,236,327,122,322"/>
<area shape="poly" title=" " alt="" coords="1263,321,1458,390,1547,426,1545,431,1456,394,1261,326"/>
<area shape="rect" title=" " alt="" coords="747,129,814,154"/>
<area shape="poly" title=" " alt="" coords="828,133,884,130,953,132,1025,144,1061,155,1095,170,1133,197,1164,231,1188,266,1203,292,1199,295,1183,268,1160,235,1129,201,1092,174,1059,160,1024,149,952,137,884,135,828,138"/>
<area shape="rect" title=" " alt="" coords="685,381,876,421"/>
<area shape="poly" title=" " alt="" coords="889,391,989,378,1093,355,1141,337,1182,317,1185,322,1143,342,1094,360,990,383,890,396"/>
<area shape="poly" title=" " alt="" coords="454,412,685,403,685,408,454,418"/>
<area shape="rect" title=" " alt="" coords="17,474,96,499"/>
<area shape="poly" title=" " alt="" coords="109,476,211,456,299,430,301,435,213,461,110,482"/>
<area shape="rect" title=" " alt="" coords="19,425,94,450"/>
<area shape="poly" title=" " alt="" coords="108,436,212,433,248,430,248,435,212,439,108,441"/>
<area shape="rect" title=" " alt="" coords="284,523,392,549"/>
<area shape="poly" title=" " alt="" coords="406,533,1117,533,1117,539,406,539"/>
<area shape="poly" title=" " alt="" coords="405,526,564,506,629,496,660,488,669,476,671,462,674,447,683,432,700,419,703,424,687,435,679,449,677,463,674,478,663,493,631,501,564,511,406,531"/>
<area shape="poly" title=" " alt="" coords="372,514,415,493,463,473,494,466,521,463,569,464,591,463,613,459,636,450,659,433,669,418,671,402,673,385,683,367,705,353,708,358,687,371,678,386,676,403,674,420,663,437,638,454,615,464,592,469,569,469,521,468,495,471,465,479,417,498,375,519"/>
<area shape="rect" title=" " alt="" coords="695,610,866,635"/>
<area shape="poly" title=" " alt="" coords="397,550,465,567,563,585,662,600,705,607,704,613,661,605,562,590,463,572,396,555"/>
<area shape="rect" title=" " alt="" coords="37,523,76,549"/>
<area shape="poly" title=" " alt="" coords="90,533,284,533,284,539,90,539"/>
<area shape="rect" title=" " alt="" coords="738,178,823,203"/>
<area shape="poly" title=" " alt="" coords="838,186,893,188,958,193,1027,205,1094,224,1125,239,1153,257,1196,292,1192,296,1150,261,1122,243,1092,229,1026,210,957,198,892,193,837,192"/>
<area shape="poly" title=" " alt="" coords="884,335,1093,320,1129,316,1130,321,1094,325,884,341"/>
<area shape="rect" title=" " alt="" coords="737,227,824,253"/>
<area shape="poly" title=" " alt="" coords="838,239,956,248,1094,268,1174,291,1173,296,1093,273,956,253,837,245"/>
<area shape="rect" title=" " alt="" coords="743,446,818,471"/>
<area shape="poly" title=" " alt="" coords="831,455,1514,440,1514,445,832,460"/>
<area shape="poly" title=" " alt="" coords="832,450,990,429,1092,411,1100,403,1104,393,1108,382,1115,370,1149,340,1183,317,1186,322,1153,344,1119,374,1112,385,1109,395,1105,406,1095,416,991,434,832,455"/>
<area shape="rect" title=" " alt="" coords="1175,674,1242,699"/>
<area shape="poly" title=" " alt="" coords="1256,693,1303,698,1356,696,1409,684,1434,672,1456,657,1465,646,1470,635,1472,611,1471,585,1479,555,1497,524,1519,495,1560,452,1563,456,1523,498,1502,527,1484,557,1476,586,1477,611,1476,636,1470,648,1459,661,1436,677,1411,689,1357,701,1303,703,1256,698"/>
<area shape="poly" title=" " alt="" coords="880,627,1025,634,1194,635,1276,632,1350,624,1411,611,1456,594,1465,586,1469,577,1479,555,1524,497,1562,453,1566,456,1528,500,1484,557,1474,580,1469,589,1459,598,1413,617,1350,629,1276,637,1194,641,1025,640,880,633"/>
<area shape="rect" title=" " alt="" coords="291,610,385,635"/>
<area shape="poly" title=" " alt="" coords="398,620,695,620,695,625,398,625"/>
<area shape="rect" title=" " alt="" coords="1183,385,1234,410"/>
<area shape="poly" title=" " alt="" coords="1248,399,1458,424,1514,431,1514,436,1457,429,1248,404"/>
</map>
<center><span class="legend">[<a target="top" href="../../graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a8ce369fec28b2ef22fe68c3dca929476"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a8ce369fec28b2ef22fe68c3dca929476">DGRCandidateQueue</a> ()</td></tr>
<tr class="memdesc:a8ce369fec28b2ef22fe68c3dca929476"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create an empty SPF Candidate Queue.  <br /></td></tr>
<tr class="separator:a8ce369fec28b2ef22fe68c3dca929476"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a781c132e67fec6534adb3e588e938034"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a781c132e67fec6534adb3e588e938034">~DGRCandidateQueue</a> ()</td></tr>
<tr class="memdesc:a781c132e67fec6534adb3e588e938034"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy an SPF Candidate Queue and release any resources held by the contents.  <br /></td></tr>
<tr class="separator:a781c132e67fec6534adb3e588e938034"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adeeaf9c5c6e52bf6532da18cad7a1a13"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#adeeaf9c5c6e52bf6532da18cad7a1a13">Clear</a> (void)</td></tr>
<tr class="memdesc:adeeaf9c5c6e52bf6532da18cad7a1a13"><td class="mdescLeft">&#160;</td><td class="mdescRight">Empty the Candidate Queue and release all of the resources associated with the Shortest Path First Vertex pointers in the queue.  <br /></td></tr>
<tr class="separator:adeeaf9c5c6e52bf6532da18cad7a1a13"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8fafbd85e0ef421b1660ad089997a8e1"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a8fafbd85e0ef421b1660ad089997a8e1">Empty</a> (void) const</td></tr>
<tr class="memdesc:a8fafbd85e0ef421b1660ad089997a8e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test the Candidate Queue to determine if it is empty.  <br /></td></tr>
<tr class="separator:a8fafbd85e0ef421b1660ad089997a8e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0059b97ee38bc933def96f22719e90c8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html">DGRVertex</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a0059b97ee38bc933def96f22719e90c8">Find</a> (const Ipv4Address addr) const</td></tr>
<tr class="memdesc:a0059b97ee38bc933def96f22719e90c8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches the Candidate Queue for a Shortest Path First Vertex pointer that points to a vertex having the given IP address.  <br /></td></tr>
<tr class="separator:a0059b97ee38bc933def96f22719e90c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a278c16f4c6de3e85aa9268215a6e95db"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html">DGRVertex</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a278c16f4c6de3e85aa9268215a6e95db">Pop</a> (void)</td></tr>
<tr class="memdesc:a278c16f4c6de3e85aa9268215a6e95db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pop the Shortest Path First Vertex pointer at the top of the queue.  <br /></td></tr>
<tr class="separator:a278c16f4c6de3e85aa9268215a6e95db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae02f69062ca21f025cba41d535491b87"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#ae02f69062ca21f025cba41d535491b87">Push</a> (<a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html">DGRVertex</a> *vNew)</td></tr>
<tr class="memdesc:ae02f69062ca21f025cba41d535491b87"><td class="mdescLeft">&#160;</td><td class="mdescRight">Push a Shortest Path First Vertex pointer onto the queue according to the priority scheme.  <br /></td></tr>
<tr class="separator:ae02f69062ca21f025cba41d535491b87"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8745d6ce64bdbdc57e731025c7e78935"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a8745d6ce64bdbdc57e731025c7e78935">Reorder</a> (void)</td></tr>
<tr class="memdesc:a8745d6ce64bdbdc57e731025c7e78935"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reorders the Candidate Queue according to the priority scheme.  <br /></td></tr>
<tr class="separator:a8745d6ce64bdbdc57e731025c7e78935"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abdb46ac92a797d66c0a08f646f6637f5"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#abdb46ac92a797d66c0a08f646f6637f5">Size</a> (void) const</td></tr>
<tr class="memdesc:abdb46ac92a797d66c0a08f646f6637f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the number of Shortest Path First Vertex pointers presently stored in the Candidate Queue.  <br /></td></tr>
<tr class="separator:abdb46ac92a797d66c0a08f646f6637f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a977476bb6142c7c0cb75af8c7fbc28cc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html">DGRVertex</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a977476bb6142c7c0cb75af8c7fbc28cc">Top</a> (void) const</td></tr>
<tr class="memdesc:a977476bb6142c7c0cb75af8c7fbc28cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the Shortest Path First Vertex pointer at the top of the queue.  <br /></td></tr>
<tr class="separator:a977476bb6142c7c0cb75af8c7fbc28cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-types" name="pri-types"></a>
Private Types</h2></td></tr>
<tr class="memitem:a8e75c8bcd203b33ac721416e2640c59f"><td class="memItemLeft" align="right" valign="top">typedef std::list&lt; <a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html">DGRVertex</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a8e75c8bcd203b33ac721416e2640c59f">DGRCandidateList_t</a></td></tr>
<tr class="memdesc:a8e75c8bcd203b33ac721416e2640c59f"><td class="mdescLeft">&#160;</td><td class="mdescRight">container of <a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html" title="Vertex used in shortest path first (SPF) computations.">DGRVertex</a> pointers  <br /></td></tr>
<tr class="separator:a8e75c8bcd203b33ac721416e2640c59f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-methods" name="pri-methods"></a>
Private Member Functions</h2></td></tr>
<tr class="memitem:a2623d9840bbebaa9f73e9ab107c58c7c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a2623d9840bbebaa9f73e9ab107c58c7c">DGRCandidateQueue</a> (<a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html">DGRCandidateQueue</a> &amp;sr)</td></tr>
<tr class="memdesc:a2623d9840bbebaa9f73e9ab107c58c7c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Candidate Queue copy construction is disallowed (not implemented) to prevent the compiler from slipping in incorrect versions that don't properly deal with deep copies.  <br /></td></tr>
<tr class="separator:a2623d9840bbebaa9f73e9ab107c58c7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab3406cbdd8465b4dc741d75a92eae7ff"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html">DGRCandidateQueue</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#ab3406cbdd8465b4dc741d75a92eae7ff">operator=</a> (<a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html">DGRCandidateQueue</a> &amp;sr)</td></tr>
<tr class="memdesc:ab3406cbdd8465b4dc741d75a92eae7ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Candidate Queue assignment operator is disallowed (not implemented) to prevent the compiler from slipping in incorrect versions that don't properly deal with deep copies.  <br /></td></tr>
<tr class="separator:ab3406cbdd8465b4dc741d75a92eae7ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-static-methods" name="pri-static-methods"></a>
Static Private Member Functions</h2></td></tr>
<tr class="memitem:aff4da36dc33f48b29a1ac3cedaaca635"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#aff4da36dc33f48b29a1ac3cedaaca635">CompareDGRVertex</a> (const <a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html">DGRVertex</a> *v1, const <a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html">DGRVertex</a> *v2)</td></tr>
<tr class="memdesc:aff4da36dc33f48b29a1ac3cedaaca635"><td class="mdescLeft">&#160;</td><td class="mdescRight">return true if v1 &lt; v2  <br /></td></tr>
<tr class="separator:aff4da36dc33f48b29a1ac3cedaaca635"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-attribs" name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:a2d91aa78fea568afa265cdbed2f214c4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a8e75c8bcd203b33ac721416e2640c59f">DGRCandidateList_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a2d91aa78fea568afa265cdbed2f214c4">m_candidates</a></td></tr>
<tr class="memdesc:a2d91aa78fea568afa265cdbed2f214c4"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html" title="Vertex used in shortest path first (SPF) computations.">DGRVertex</a> candidates.  <br /></td></tr>
<tr class="separator:a2d91aa78fea568afa265cdbed2f214c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="friends" name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:a428325dcf2c8e3cf0886db75647b7795"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a428325dcf2c8e3cf0886db75647b7795">operator&lt;&lt;</a> (std::ostream &amp;os, const <a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html">DGRCandidateQueue</a> &amp;q)</td></tr>
<tr class="memdesc:a428325dcf2c8e3cf0886db75647b7795"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stream insertion operator.  <br /></td></tr>
<tr class="separator:a428325dcf2c8e3cf0886db75647b7795"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>A Candidate Queue used in routing calculations. </p>
<p>The CandidateQueue is used in the OSPF shortest path computations. It is a priority queue used to store candidates for the shortest path to a given network.</p>
<p>The queue holds Shortest Path First Vertex pointers and orders them according to the lowest value of the field m_distanceFromRoot. Remaining vertices are ordered according to increasing distance. This implements a priority queue.</p>
<p>Although a STL priority_queue almost does what we want, the requirement for a Find () operation, the dynamic nature of the data and the derived requirement for a Reorder () operation led us to implement this simple enhanced priority queue. </p>

<p class="definition">Definition at line <a class="el" href="../../df/d86/dgr-candidate-queue_8h_source.html#l00051">51</a> of file <a class="el" href="../../df/d86/dgr-candidate-queue_8h_source.html">dgr-candidate-queue.h</a>.</p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="a8e75c8bcd203b33ac721416e2640c59f" name="a8e75c8bcd203b33ac721416e2640c59f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8e75c8bcd203b33ac721416e2640c59f">&#9670;&#160;</a></span>DGRCandidateList_t</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">typedef std::list&lt;<a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html">DGRVertex</a>*&gt; <a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a8e75c8bcd203b33ac721416e2640c59f">ns3::DGRCandidateQueue::DGRCandidateList_t</a></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>container of <a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html" title="Vertex used in shortest path first (SPF) computations.">DGRVertex</a> pointers </p>

<p class="definition">Definition at line <a class="el" href="../../df/d86/dgr-candidate-queue_8h_source.html#l00187">187</a> of file <a class="el" href="../../df/d86/dgr-candidate-queue_8h_source.html">dgr-candidate-queue.h</a>.</p>

</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a8ce369fec28b2ef22fe68c3dca929476" name="a8ce369fec28b2ef22fe68c3dca929476"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8ce369fec28b2ef22fe68c3dca929476">&#9670;&#160;</a></span>DGRCandidateQueue() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ns3::DGRCandidateQueue::DGRCandidateQueue </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Create an empty SPF Candidate Queue. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html" title="Vertex used in shortest path first (SPF) computations.">DGRVertex</a> </dd></dl>

<p class="definition">Definition at line <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00068">68</a> of file <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html">dgr-candidate-queue.cc</a>.</p>

</div>
</div>
<a id="a781c132e67fec6534adb3e588e938034" name="a781c132e67fec6534adb3e588e938034"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a781c132e67fec6534adb3e588e938034">&#9670;&#160;</a></span>~DGRCandidateQueue()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">ns3::DGRCandidateQueue::~DGRCandidateQueue </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Destroy an SPF Candidate Queue and release any resources held by the contents. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html" title="Vertex used in shortest path first (SPF) computations.">DGRVertex</a> </dd></dl>

<p class="definition">Definition at line <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00074">74</a> of file <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html">dgr-candidate-queue.cc</a>.</p>

<p class="reference">References <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00081">Clear()</a>.</p>
<div id="dynsection-1" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-1-trigger" src="../../closed.png" alt="+"/> Here is the call graph for this function:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><img src="../../dd/d17/classns3_1_1_d_g_r_candidate_queue_a781c132e67fec6534adb3e588e938034_cgraph.png" border="0" usemap="#add/d17/classns3_1_1_d_g_r_candidate_queue_a781c132e67fec6534adb3e588e938034_cgraph" alt=""/></div>
<map name="add/d17/classns3_1_1_d_g_r_candidate_queue_a781c132e67fec6534adb3e588e938034_cgraph" id="add/d17/classns3_1_1_d_g_r_candidate_queue_a781c132e67fec6534adb3e588e938034_cgraph">
<area shape="rect" title="Destroy an SPF Candidate Queue and release any resources held by the contents." alt="" coords="5,5,196,45"/>
<area shape="rect" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#adeeaf9c5c6e52bf6532da18cad7a1a13" title="Empty the Candidate Queue and release all of the resources associated with the Shortest Path First Ve..." alt="" coords="244,5,435,45"/>
<area shape="poly" title=" " alt="" coords="196,23,230,23,230,28,196,28"/>
<area shape="rect" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a278c16f4c6de3e85aa9268215a6e95db" title="Pop the Shortest Path First Vertex pointer at the top of the queue." alt="" coords="483,13,705,38"/>
<area shape="poly" title=" " alt="" coords="435,23,469,23,469,28,435,28"/>
</map>
</div>

</div>
</div>
<a id="a2623d9840bbebaa9f73e9ab107c58c7c" name="a2623d9840bbebaa9f73e9ab107c58c7c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2623d9840bbebaa9f73e9ab107c58c7c">&#9670;&#160;</a></span>DGRCandidateQueue() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">ns3::DGRCandidateQueue::DGRCandidateQueue </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html">DGRCandidateQueue</a> &amp;&#160;</td>
          <td class="paramname"><em>sr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Candidate Queue copy construction is disallowed (not implemented) to prevent the compiler from slipping in incorrect versions that don't properly deal with deep copies. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">sr</td><td>object to copy </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="adeeaf9c5c6e52bf6532da18cad7a1a13" name="adeeaf9c5c6e52bf6532da18cad7a1a13"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adeeaf9c5c6e52bf6532da18cad7a1a13">&#9670;&#160;</a></span>Clear()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ns3::DGRCandidateQueue::Clear </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Empty the Candidate Queue and release all of the resources associated with the Shortest Path First Vertex pointers in the queue. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html" title="Vertex used in shortest path first (SPF) computations.">DGRVertex</a> </dd></dl>

<p class="definition">Definition at line <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00081">81</a> of file <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html">dgr-candidate-queue.cc</a>.</p>

<p class="reference">References <a class="el" href="../../df/d86/dgr-candidate-queue_8h_source.html#l00188">m_candidates</a>, and <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00105">Pop()</a>.</p>

<p class="reference">Referenced by <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00074">~DGRCandidateQueue()</a>.</p>
<div id="dynsection-2" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-2-trigger" src="../../closed.png" alt="+"/> Here is the call graph for this function:</div>
<div id="dynsection-2-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-2-content" class="dyncontent" style="display:none;">
<div class="center"><img src="../../dd/d17/classns3_1_1_d_g_r_candidate_queue_adeeaf9c5c6e52bf6532da18cad7a1a13_cgraph.png" border="0" usemap="#add/d17/classns3_1_1_d_g_r_candidate_queue_adeeaf9c5c6e52bf6532da18cad7a1a13_cgraph" alt=""/></div>
<map name="add/d17/classns3_1_1_d_g_r_candidate_queue_adeeaf9c5c6e52bf6532da18cad7a1a13_cgraph" id="add/d17/classns3_1_1_d_g_r_candidate_queue_adeeaf9c5c6e52bf6532da18cad7a1a13_cgraph">
<area shape="rect" title="Empty the Candidate Queue and release all of the resources associated with the Shortest Path First Ve..." alt="" coords="5,5,196,45"/>
<area shape="rect" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a278c16f4c6de3e85aa9268215a6e95db" title="Pop the Shortest Path First Vertex pointer at the top of the queue." alt="" coords="244,13,467,38"/>
<area shape="poly" title=" " alt="" coords="196,23,230,23,230,28,196,28"/>
</map>
</div>
<div id="dynsection-3" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-3-trigger" src="../../closed.png" alt="+"/> Here is the caller graph for this function:</div>
<div id="dynsection-3-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-3-content" class="dyncontent" style="display:none;">
<div class="center"><img src="../../dd/d17/classns3_1_1_d_g_r_candidate_queue_adeeaf9c5c6e52bf6532da18cad7a1a13_icgraph.png" border="0" usemap="#add/d17/classns3_1_1_d_g_r_candidate_queue_adeeaf9c5c6e52bf6532da18cad7a1a13_icgraph" alt=""/></div>
<map name="add/d17/classns3_1_1_d_g_r_candidate_queue_adeeaf9c5c6e52bf6532da18cad7a1a13_icgraph" id="add/d17/classns3_1_1_d_g_r_candidate_queue_adeeaf9c5c6e52bf6532da18cad7a1a13_icgraph">
<area shape="rect" title="Empty the Candidate Queue and release all of the resources associated with the Shortest Path First Ve..." alt="" coords="244,5,435,45"/>
<area shape="rect" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a781c132e67fec6534adb3e588e938034" title="Destroy an SPF Candidate Queue and release any resources held by the contents." alt="" coords="5,5,196,45"/>
<area shape="poly" title=" " alt="" coords="230,28,196,28,196,23,230,23"/>
</map>
</div>

</div>
</div>
<a id="aff4da36dc33f48b29a1ac3cedaaca635" name="aff4da36dc33f48b29a1ac3cedaaca635"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aff4da36dc33f48b29a1ac3cedaaca635">&#9670;&#160;</a></span>CompareDGRVertex()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ns3::DGRCandidateQueue::CompareDGRVertex </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html">DGRVertex</a> *&#160;</td>
          <td class="paramname"><em>v1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html">DGRVertex</a> *&#160;</td>
          <td class="paramname"><em>v2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>return true if v1 &lt; v2 </p>
<p>DGRVertexes are added into the queue according to the ordering defined by this method. If v1 should be popped before v2, this method return true; false otherwise</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">v1</td><td>first operand </td></tr>
    <tr><td class="paramname">v2</td><td>second operand </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if v1 should be popped before v2; false otherwise </dd></dl>

<p class="definition">Definition at line <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00180">180</a> of file <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html">dgr-candidate-queue.cc</a>.</p>

<p class="reference">References <a class="el" href="../../d3/d4c/dgr-route-manager-impl_8cc_source.html#l00228">ns3::DGRVertex::GetDistanceFromRoot()</a>, <a class="el" href="../../d3/d4c/dgr-route-manager-impl_8cc_source.html#l00186">ns3::DGRVertex::GetVertexType()</a>, <a class="el" href="../../d5/d9c/dgr-route-manager-impl_8h_source.html#l00082">ns3::DGRVertex::VertexNetwork</a>, and <a class="el" href="../../d5/d9c/dgr-route-manager-impl_8h_source.html#l00081">ns3::DGRVertex::VertexRouter</a>.</p>

<p class="reference">Referenced by <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00093">Push()</a>, and <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00163">Reorder()</a>.</p>
<div id="dynsection-4" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-4-trigger" src="../../closed.png" alt="+"/> Here is the call graph for this function:</div>
<div id="dynsection-4-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-4-content" class="dyncontent" style="display:none;">
<div class="center"><img src="../../dd/d17/classns3_1_1_d_g_r_candidate_queue_aff4da36dc33f48b29a1ac3cedaaca635_cgraph.png" border="0" usemap="#add/d17/classns3_1_1_d_g_r_candidate_queue_aff4da36dc33f48b29a1ac3cedaaca635_cgraph" alt=""/></div>
<map name="add/d17/classns3_1_1_d_g_r_candidate_queue_aff4da36dc33f48b29a1ac3cedaaca635_cgraph" id="add/d17/classns3_1_1_d_g_r_candidate_queue_aff4da36dc33f48b29a1ac3cedaaca635_cgraph">
<area shape="rect" title="return true if v1 &lt; v2" alt="" coords="5,35,196,75"/>
<area shape="rect" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html#a307ee8139d815f7f26b8cf01e6885b53" title="Get the distance from the root vertex to &quot;this&quot; DGRVertex object." alt="" coords="251,5,463,45"/>
<area shape="poly" title=" " alt="" coords="196,41,238,36,238,42,197,46"/>
<area shape="rect" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html#a5999846daefbeb25a5265e80e3f3a078" title="Get the Vertex Type field of a DGRVertex object." alt="" coords="244,70,471,95"/>
<area shape="poly" title=" " alt="" coords="197,62,231,66,230,71,196,68"/>
</map>
</div>
<div id="dynsection-5" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-5-trigger" src="../../closed.png" alt="+"/> Here is the caller graph for this function:</div>
<div id="dynsection-5-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-5-content" class="dyncontent" style="display:none;">
<div class="center"><img src="../../dd/d17/classns3_1_1_d_g_r_candidate_queue_aff4da36dc33f48b29a1ac3cedaaca635_icgraph.png" border="0" usemap="#add/d17/classns3_1_1_d_g_r_candidate_queue_aff4da36dc33f48b29a1ac3cedaaca635_icgraph" alt=""/></div>
<map name="add/d17/classns3_1_1_d_g_r_candidate_queue_aff4da36dc33f48b29a1ac3cedaaca635_icgraph" id="add/d17/classns3_1_1_d_g_r_candidate_queue_aff4da36dc33f48b29a1ac3cedaaca635_icgraph">
<area shape="rect" title="return true if v1 &lt; v2" alt="" coords="1008,37,1199,77"/>
<area shape="rect" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#ae02f69062ca21f025cba41d535491b87" title="Push a Shortest Path First Vertex pointer onto the queue according to the priority scheme." alt="" coords="769,5,960,45"/>
<area shape="poly" title=" " alt="" coords="994,45,960,41,960,35,995,40"/>
<area shape="rect" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a8745d6ce64bdbdc57e731025c7e78935" title="Reorders the Candidate Queue according to the priority scheme." alt="" coords="769,69,960,109"/>
<area shape="poly" title=" " alt="" coords="995,75,960,79,960,74,994,69"/>
<area shape="rect" href="../../da/d20/classns3_1_1_d_g_r_route_manager_impl.html#ab573904f9f357e2b802b1bbdcdc3247d" title="Examine the links in v&#39;s LSA and update the list of candidates with any vertices not already on the l..." alt="" coords="515,37,721,77"/>
<area shape="poly" title=" " alt="" coords="756,42,722,47,721,41,755,37"/>
<area shape="rect" href="../../da/d20/classns3_1_1_d_g_r_route_manager_impl.html#a910c2efcc40a79d4c062eb08ceb11522" title="Calculate the shortest path first (SPF) tree." alt="" coords="260,37,467,77"/>
<area shape="poly" title=" " alt="" coords="501,60,467,60,467,55,501,55"/>
<area shape="rect" href="../../da/d20/classns3_1_1_d_g_r_route_manager_impl.html#a3b798959aeda8a76373705151497692e" title="Compute routes using a Dijkstra SPF computation and populate per&#45;node forwarding tables." alt="" coords="5,37,212,77"/>
<area shape="poly" title=" " alt="" coords="247,60,212,60,212,55,247,55"/>
<area shape="poly" title=" " alt="" coords="755,78,721,73,722,68,756,73"/>
</map>
</div>

</div>
</div>
<a id="a8fafbd85e0ef421b1660ad089997a8e1" name="a8fafbd85e0ef421b1660ad089997a8e1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8fafbd85e0ef421b1660ad089997a8e1">&#9670;&#160;</a></span>Empty()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ns3::DGRCandidateQueue::Empty </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Test the Candidate Queue to determine if it is empty. </p>
<dl class="section return"><dt>Returns</dt><dd>True if the queue is empty, false otherwise. </dd></dl>

<p class="definition">Definition at line <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00131">131</a> of file <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html">dgr-candidate-queue.cc</a>.</p>

<p class="reference">References <a class="el" href="../../df/d86/dgr-candidate-queue_8h_source.html#l00188">m_candidates</a>.</p>

</div>
</div>
<a id="a0059b97ee38bc933def96f22719e90c8" name="a0059b97ee38bc933def96f22719e90c8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0059b97ee38bc933def96f22719e90c8">&#9670;&#160;</a></span>Find()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html">DGRVertex</a> * ns3::DGRCandidateQueue::Find </td>
          <td>(</td>
          <td class="paramtype">const Ipv4Address&#160;</td>
          <td class="paramname"><em>addr</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Searches the Candidate Queue for a Shortest Path First Vertex pointer that points to a vertex having the given IP address. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html" title="Vertex used in shortest path first (SPF) computations.">DGRVertex</a> </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">addr</td><td>The IP address to search for. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The DGRVertex* pointer corresponding to the given IP address. </dd></dl>

<p class="definition">Definition at line <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00145">145</a> of file <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html">dgr-candidate-queue.cc</a>.</p>

<p class="reference">References <a class="el" href="../../d3/d4c/dgr-route-manager-impl_8cc_source.html#l00200">ns3::DGRVertex::GetVertexId()</a>, <a class="el" href="../../d3/d89/dgr-sink_8cc_source.html#l00169">ns3::i</a>, and <a class="el" href="../../df/d86/dgr-candidate-queue_8h_source.html#l00188">m_candidates</a>.</p>

<p class="reference">Referenced by <a class="el" href="../../d3/d4c/dgr-route-manager-impl_8cc_source.html#l00861">ns3::DGRRouteManagerImpl::SPFNext()</a>.</p>
<div id="dynsection-6" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-6-trigger" src="../../closed.png" alt="+"/> Here is the call graph for this function:</div>
<div id="dynsection-6-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-6-content" class="dyncontent" style="display:none;">
<div class="center"><img src="../../dd/d17/classns3_1_1_d_g_r_candidate_queue_a0059b97ee38bc933def96f22719e90c8_cgraph.png" border="0" usemap="#add/d17/classns3_1_1_d_g_r_candidate_queue_a0059b97ee38bc933def96f22719e90c8_cgraph" alt=""/></div>
<map name="add/d17/classns3_1_1_d_g_r_candidate_queue_a0059b97ee38bc933def96f22719e90c8_cgraph" id="add/d17/classns3_1_1_d_g_r_candidate_queue_a0059b97ee38bc933def96f22719e90c8_cgraph">
<area shape="rect" title="Searches the Candidate Queue for a Shortest Path First Vertex pointer that points to a vertex having ..." alt="" coords="5,5,196,45"/>
<area shape="rect" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html#a83acd923d19102c507faadb2f4e68f56" title="Get the Vertex ID field of a DGRVertex object." alt="" coords="244,13,453,38"/>
<area shape="poly" title=" " alt="" coords="196,23,230,23,230,28,196,28"/>
</map>
</div>
<div id="dynsection-7" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-7-trigger" src="../../closed.png" alt="+"/> Here is the caller graph for this function:</div>
<div id="dynsection-7-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-7-content" class="dyncontent" style="display:none;">
<div class="center"><img src="../../dd/d17/classns3_1_1_d_g_r_candidate_queue_a0059b97ee38bc933def96f22719e90c8_icgraph.png" border="0" usemap="#add/d17/classns3_1_1_d_g_r_candidate_queue_a0059b97ee38bc933def96f22719e90c8_icgraph" alt=""/></div>
<map name="add/d17/classns3_1_1_d_g_r_candidate_queue_a0059b97ee38bc933def96f22719e90c8_icgraph" id="add/d17/classns3_1_1_d_g_r_candidate_queue_a0059b97ee38bc933def96f22719e90c8_icgraph">
<area shape="rect" title="Searches the Candidate Queue for a Shortest Path First Vertex pointer that points to a vertex having ..." alt="" coords="769,5,960,45"/>
<area shape="rect" href="../../da/d20/classns3_1_1_d_g_r_route_manager_impl.html#ab573904f9f357e2b802b1bbdcdc3247d" title="Examine the links in v&#39;s LSA and update the list of candidates with any vertices not already on the l..." alt="" coords="515,5,721,45"/>
<area shape="poly" title=" " alt="" coords="755,28,722,28,722,23,755,23"/>
<area shape="rect" href="../../da/d20/classns3_1_1_d_g_r_route_manager_impl.html#a910c2efcc40a79d4c062eb08ceb11522" title="Calculate the shortest path first (SPF) tree." alt="" coords="260,5,467,45"/>
<area shape="poly" title=" " alt="" coords="501,28,467,28,467,23,501,23"/>
<area shape="rect" href="../../da/d20/classns3_1_1_d_g_r_route_manager_impl.html#a3b798959aeda8a76373705151497692e" title="Compute routes using a Dijkstra SPF computation and populate per&#45;node forwarding tables." alt="" coords="5,5,212,45"/>
<area shape="poly" title=" " alt="" coords="247,28,212,28,212,23,247,23"/>
</map>
</div>

</div>
</div>
<a id="ab3406cbdd8465b4dc741d75a92eae7ff" name="ab3406cbdd8465b4dc741d75a92eae7ff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab3406cbdd8465b4dc741d75a92eae7ff">&#9670;&#160;</a></span>operator=()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html">DGRCandidateQueue</a> &amp; ns3::DGRCandidateQueue::operator= </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html">DGRCandidateQueue</a> &amp;&#160;</td>
          <td class="paramname"><em>sr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Candidate Queue assignment operator is disallowed (not implemented) to prevent the compiler from slipping in incorrect versions that don't properly deal with deep copies. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">sr</td><td>object to assign </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>copied object </dd></dl>

</div>
</div>
<a id="a278c16f4c6de3e85aa9268215a6e95db" name="a278c16f4c6de3e85aa9268215a6e95db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a278c16f4c6de3e85aa9268215a6e95db">&#9670;&#160;</a></span>Pop()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html">DGRVertex</a> * ns3::DGRCandidateQueue::Pop </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pop the Shortest Path First Vertex pointer at the top of the queue. </p>
<p>The caller is given the responsibility for releasing the resources associated with the vertex.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html" title="Vertex used in shortest path first (SPF) computations.">DGRVertex</a> </dd>
<dd>
<a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a977476bb6142c7c0cb75af8c7fbc28cc" title="Return the Shortest Path First Vertex pointer at the top of the queue.">Top</a> () </dd></dl>
<dl class="section return"><dt>Returns</dt><dd>The Shortest Path First Vertex pointer at the top of the queue. </dd></dl>

<p class="definition">Definition at line <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00105">105</a> of file <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html">dgr-candidate-queue.cc</a>.</p>

<p class="reference">References <a class="el" href="../../df/d86/dgr-candidate-queue_8h_source.html#l00188">m_candidates</a>.</p>

<p class="reference">Referenced by <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00081">Clear()</a>, and <a class="el" href="../../d3/d4c/dgr-route-manager-impl_8cc_source.html#l01456">ns3::DGRRouteManagerImpl::SPFCalculate()</a>.</p>
<div id="dynsection-8" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-8-trigger" src="../../closed.png" alt="+"/> Here is the caller graph for this function:</div>
<div id="dynsection-8-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-8-content" class="dyncontent" style="display:none;">
<div class="center"><img src="../../dd/d17/classns3_1_1_d_g_r_candidate_queue_a278c16f4c6de3e85aa9268215a6e95db_icgraph.png" border="0" usemap="#add/d17/classns3_1_1_d_g_r_candidate_queue_a278c16f4c6de3e85aa9268215a6e95db_icgraph" alt=""/></div>
<map name="add/d17/classns3_1_1_d_g_r_candidate_queue_a278c16f4c6de3e85aa9268215a6e95db_icgraph" id="add/d17/classns3_1_1_d_g_r_candidate_queue_a278c16f4c6de3e85aa9268215a6e95db_icgraph">
<area shape="rect" title="Pop the Shortest Path First Vertex pointer at the top of the queue." alt="" coords="515,45,737,70"/>
<area shape="rect" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#adeeaf9c5c6e52bf6532da18cad7a1a13" title="Empty the Candidate Queue and release all of the resources associated with the Shortest Path First Ve..." alt="" coords="268,5,459,45"/>
<area shape="poly" title=" " alt="" coords="508,46,458,40,459,34,508,40"/>
<area shape="rect" href="../../da/d20/classns3_1_1_d_g_r_route_manager_impl.html#a910c2efcc40a79d4c062eb08ceb11522" title="Calculate the shortest path first (SPF) tree." alt="" coords="260,69,467,109"/>
<area shape="poly" title=" " alt="" coords="508,74,467,79,466,74,508,69"/>
<area shape="rect" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a781c132e67fec6534adb3e588e938034" title="Destroy an SPF Candidate Queue and release any resources held by the contents." alt="" coords="13,5,204,45"/>
<area shape="poly" title=" " alt="" coords="254,28,204,28,204,23,254,23"/>
<area shape="rect" href="../../da/d20/classns3_1_1_d_g_r_route_manager_impl.html#a3b798959aeda8a76373705151497692e" title="Compute routes using a Dijkstra SPF computation and populate per&#45;node forwarding tables." alt="" coords="5,69,212,109"/>
<area shape="poly" title=" " alt="" coords="247,92,212,92,212,87,247,87"/>
</map>
</div>

</div>
</div>
<a id="ae02f69062ca21f025cba41d535491b87" name="ae02f69062ca21f025cba41d535491b87"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae02f69062ca21f025cba41d535491b87">&#9670;&#160;</a></span>Push()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ns3::DGRCandidateQueue::Push </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html">DGRVertex</a> *&#160;</td>
          <td class="paramname"><em>vNew</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Push a Shortest Path First Vertex pointer onto the queue according to the priority scheme. </p>
<p>On completion, the top of the queue will hold the Shortest Path First Vertex pointer that points to a vertex having lowest value of the field m_distanceFromRoot. Remaining vertices are ordered according to increasing distance.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html" title="Vertex used in shortest path first (SPF) computations.">DGRVertex</a> </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">vNew</td><td>The Shortest Path First Vertex to add to the queue. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00093">93</a> of file <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html">dgr-candidate-queue.cc</a>.</p>

<p class="reference">References <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00180">CompareDGRVertex()</a>, <a class="el" href="../../d3/d89/dgr-sink_8cc_source.html#l00169">ns3::i</a>, and <a class="el" href="../../df/d86/dgr-candidate-queue_8h_source.html#l00188">m_candidates</a>.</p>

<p class="reference">Referenced by <a class="el" href="../../d3/d4c/dgr-route-manager-impl_8cc_source.html#l00861">ns3::DGRRouteManagerImpl::SPFNext()</a>.</p>
<div id="dynsection-9" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-9-trigger" src="../../closed.png" alt="+"/> Here is the call graph for this function:</div>
<div id="dynsection-9-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-9-content" class="dyncontent" style="display:none;">
<div class="center"><img src="../../dd/d17/classns3_1_1_d_g_r_candidate_queue_ae02f69062ca21f025cba41d535491b87_cgraph.png" border="0" usemap="#add/d17/classns3_1_1_d_g_r_candidate_queue_ae02f69062ca21f025cba41d535491b87_cgraph" alt=""/></div>
<map name="add/d17/classns3_1_1_d_g_r_candidate_queue_ae02f69062ca21f025cba41d535491b87_cgraph" id="add/d17/classns3_1_1_d_g_r_candidate_queue_ae02f69062ca21f025cba41d535491b87_cgraph">
<area shape="rect" title="Push a Shortest Path First Vertex pointer onto the queue according to the priority scheme." alt="" coords="5,35,196,75"/>
<area shape="rect" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#aff4da36dc33f48b29a1ac3cedaaca635" title="return true if v1 &lt; v2" alt="" coords="244,35,435,75"/>
<area shape="poly" title=" " alt="" coords="196,52,230,52,230,57,196,57"/>
<area shape="rect" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html#a307ee8139d815f7f26b8cf01e6885b53" title="Get the distance from the root vertex to &quot;this&quot; DGRVertex object." alt="" coords="490,5,702,45"/>
<area shape="poly" title=" " alt="" coords="435,41,476,36,477,42,435,46"/>
<area shape="rect" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html#a5999846daefbeb25a5265e80e3f3a078" title="Get the Vertex Type field of a DGRVertex object." alt="" coords="483,70,709,95"/>
<area shape="poly" title=" " alt="" coords="435,62,469,66,469,71,435,68"/>
</map>
</div>
<div id="dynsection-10" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-10-trigger" src="../../closed.png" alt="+"/> Here is the caller graph for this function:</div>
<div id="dynsection-10-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-10-content" class="dyncontent" style="display:none;">
<div class="center"><img src="../../dd/d17/classns3_1_1_d_g_r_candidate_queue_ae02f69062ca21f025cba41d535491b87_icgraph.png" border="0" usemap="#add/d17/classns3_1_1_d_g_r_candidate_queue_ae02f69062ca21f025cba41d535491b87_icgraph" alt=""/></div>
<map name="add/d17/classns3_1_1_d_g_r_candidate_queue_ae02f69062ca21f025cba41d535491b87_icgraph" id="add/d17/classns3_1_1_d_g_r_candidate_queue_ae02f69062ca21f025cba41d535491b87_icgraph">
<area shape="rect" title="Push a Shortest Path First Vertex pointer onto the queue according to the priority scheme." alt="" coords="769,5,960,45"/>
<area shape="rect" href="../../da/d20/classns3_1_1_d_g_r_route_manager_impl.html#ab573904f9f357e2b802b1bbdcdc3247d" title="Examine the links in v&#39;s LSA and update the list of candidates with any vertices not already on the l..." alt="" coords="515,5,721,45"/>
<area shape="poly" title=" " alt="" coords="755,28,722,28,722,23,755,23"/>
<area shape="rect" href="../../da/d20/classns3_1_1_d_g_r_route_manager_impl.html#a910c2efcc40a79d4c062eb08ceb11522" title="Calculate the shortest path first (SPF) tree." alt="" coords="260,5,467,45"/>
<area shape="poly" title=" " alt="" coords="501,28,467,28,467,23,501,23"/>
<area shape="rect" href="../../da/d20/classns3_1_1_d_g_r_route_manager_impl.html#a3b798959aeda8a76373705151497692e" title="Compute routes using a Dijkstra SPF computation and populate per&#45;node forwarding tables." alt="" coords="5,5,212,45"/>
<area shape="poly" title=" " alt="" coords="247,28,212,28,212,23,247,23"/>
</map>
</div>

</div>
</div>
<a id="a8745d6ce64bdbdc57e731025c7e78935" name="a8745d6ce64bdbdc57e731025c7e78935"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8745d6ce64bdbdc57e731025c7e78935">&#9670;&#160;</a></span>Reorder()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ns3::DGRCandidateQueue::Reorder </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reorders the Candidate Queue according to the priority scheme. </p>
<p>On completion, the top of the queue will hold the Shortest Path First Vertex pointer that points to a vertex having lowest value of the field m_distanceFromRoot. Remaining vertices are ordered according to increasing distance.</p>
<p>This method is provided in case the values of m_distanceFromRoot change during the routing calculations.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html" title="Vertex used in shortest path first (SPF) computations.">DGRVertex</a> </dd></dl>

<p class="definition">Definition at line <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00163">163</a> of file <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html">dgr-candidate-queue.cc</a>.</p>

<p class="reference">References <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00180">CompareDGRVertex()</a>, and <a class="el" href="../../df/d86/dgr-candidate-queue_8h_source.html#l00188">m_candidates</a>.</p>

<p class="reference">Referenced by <a class="el" href="../../d3/d4c/dgr-route-manager-impl_8cc_source.html#l00861">ns3::DGRRouteManagerImpl::SPFNext()</a>.</p>
<div id="dynsection-11" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-11-trigger" src="../../closed.png" alt="+"/> Here is the call graph for this function:</div>
<div id="dynsection-11-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-11-content" class="dyncontent" style="display:none;">
<div class="center"><img src="../../dd/d17/classns3_1_1_d_g_r_candidate_queue_a8745d6ce64bdbdc57e731025c7e78935_cgraph.png" border="0" usemap="#add/d17/classns3_1_1_d_g_r_candidate_queue_a8745d6ce64bdbdc57e731025c7e78935_cgraph" alt=""/></div>
<map name="add/d17/classns3_1_1_d_g_r_candidate_queue_a8745d6ce64bdbdc57e731025c7e78935_cgraph" id="add/d17/classns3_1_1_d_g_r_candidate_queue_a8745d6ce64bdbdc57e731025c7e78935_cgraph">
<area shape="rect" title="Reorders the Candidate Queue according to the priority scheme." alt="" coords="5,35,196,75"/>
<area shape="rect" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#aff4da36dc33f48b29a1ac3cedaaca635" title="return true if v1 &lt; v2" alt="" coords="244,35,435,75"/>
<area shape="poly" title=" " alt="" coords="196,52,230,52,230,57,196,57"/>
<area shape="rect" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html#a307ee8139d815f7f26b8cf01e6885b53" title="Get the distance from the root vertex to &quot;this&quot; DGRVertex object." alt="" coords="490,5,702,45"/>
<area shape="poly" title=" " alt="" coords="435,41,476,36,477,42,435,46"/>
<area shape="rect" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html#a5999846daefbeb25a5265e80e3f3a078" title="Get the Vertex Type field of a DGRVertex object." alt="" coords="483,70,709,95"/>
<area shape="poly" title=" " alt="" coords="435,62,469,66,469,71,435,68"/>
</map>
</div>
<div id="dynsection-12" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-12-trigger" src="../../closed.png" alt="+"/> Here is the caller graph for this function:</div>
<div id="dynsection-12-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-12-content" class="dyncontent" style="display:none;">
<div class="center"><img src="../../dd/d17/classns3_1_1_d_g_r_candidate_queue_a8745d6ce64bdbdc57e731025c7e78935_icgraph.png" border="0" usemap="#add/d17/classns3_1_1_d_g_r_candidate_queue_a8745d6ce64bdbdc57e731025c7e78935_icgraph" alt=""/></div>
<map name="add/d17/classns3_1_1_d_g_r_candidate_queue_a8745d6ce64bdbdc57e731025c7e78935_icgraph" id="add/d17/classns3_1_1_d_g_r_candidate_queue_a8745d6ce64bdbdc57e731025c7e78935_icgraph">
<area shape="rect" title="Reorders the Candidate Queue according to the priority scheme." alt="" coords="769,5,960,45"/>
<area shape="rect" href="../../da/d20/classns3_1_1_d_g_r_route_manager_impl.html#ab573904f9f357e2b802b1bbdcdc3247d" title="Examine the links in v&#39;s LSA and update the list of candidates with any vertices not already on the l..." alt="" coords="515,5,721,45"/>
<area shape="poly" title=" " alt="" coords="755,28,722,28,722,23,755,23"/>
<area shape="rect" href="../../da/d20/classns3_1_1_d_g_r_route_manager_impl.html#a910c2efcc40a79d4c062eb08ceb11522" title="Calculate the shortest path first (SPF) tree." alt="" coords="260,5,467,45"/>
<area shape="poly" title=" " alt="" coords="501,28,467,28,467,23,501,23"/>
<area shape="rect" href="../../da/d20/classns3_1_1_d_g_r_route_manager_impl.html#a3b798959aeda8a76373705151497692e" title="Compute routes using a Dijkstra SPF computation and populate per&#45;node forwarding tables." alt="" coords="5,5,212,45"/>
<area shape="poly" title=" " alt="" coords="247,28,212,28,212,23,247,23"/>
</map>
</div>

</div>
</div>
<a id="abdb46ac92a797d66c0a08f646f6637f5" name="abdb46ac92a797d66c0a08f646f6637f5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abdb46ac92a797d66c0a08f646f6637f5">&#9670;&#160;</a></span>Size()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t ns3::DGRCandidateQueue::Size </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Return the number of Shortest Path First Vertex pointers presently stored in the Candidate Queue. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html" title="Vertex used in shortest path first (SPF) computations.">DGRVertex</a> </dd></dl>
<dl class="section return"><dt>Returns</dt><dd>The number of DGRVertex* pointers in the Candidate Queue. </dd></dl>

<p class="definition">Definition at line <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00138">138</a> of file <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html">dgr-candidate-queue.cc</a>.</p>

<p class="reference">References <a class="el" href="../../df/d86/dgr-candidate-queue_8h_source.html#l00188">m_candidates</a>.</p>

<p class="reference">Referenced by <a class="el" href="../../d3/d4c/dgr-route-manager-impl_8cc_source.html#l01456">ns3::DGRRouteManagerImpl::SPFCalculate()</a>.</p>
<div id="dynsection-13" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-13-trigger" src="../../closed.png" alt="+"/> Here is the caller graph for this function:</div>
<div id="dynsection-13-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-13-content" class="dyncontent" style="display:none;">
<div class="center"><img src="../../dd/d17/classns3_1_1_d_g_r_candidate_queue_abdb46ac92a797d66c0a08f646f6637f5_icgraph.png" border="0" usemap="#add/d17/classns3_1_1_d_g_r_candidate_queue_abdb46ac92a797d66c0a08f646f6637f5_icgraph" alt=""/></div>
<map name="add/d17/classns3_1_1_d_g_r_candidate_queue_abdb46ac92a797d66c0a08f646f6637f5_icgraph" id="add/d17/classns3_1_1_d_g_r_candidate_queue_abdb46ac92a797d66c0a08f646f6637f5_icgraph">
<area shape="rect" title="Return the number of Shortest Path First Vertex pointers presently stored in the Candidate Queue." alt="" coords="515,5,705,45"/>
<area shape="rect" href="../../da/d20/classns3_1_1_d_g_r_route_manager_impl.html#a910c2efcc40a79d4c062eb08ceb11522" title="Calculate the shortest path first (SPF) tree." alt="" coords="260,5,467,45"/>
<area shape="poly" title=" " alt="" coords="501,28,467,28,467,23,501,23"/>
<area shape="rect" href="../../da/d20/classns3_1_1_d_g_r_route_manager_impl.html#a3b798959aeda8a76373705151497692e" title="Compute routes using a Dijkstra SPF computation and populate per&#45;node forwarding tables." alt="" coords="5,5,212,45"/>
<area shape="poly" title=" " alt="" coords="247,28,212,28,212,23,247,23"/>
</map>
</div>

</div>
</div>
<a id="a977476bb6142c7c0cb75af8c7fbc28cc" name="a977476bb6142c7c0cb75af8c7fbc28cc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a977476bb6142c7c0cb75af8c7fbc28cc">&#9670;&#160;</a></span>Top()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html">DGRVertex</a> * ns3::DGRCandidateQueue::Top </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Return the Shortest Path First Vertex pointer at the top of the queue. </p>
<p>This method does not pop the DGRVertex* off of the queue, it simply returns the pointer.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html" title="Vertex used in shortest path first (SPF) computations.">DGRVertex</a> </dd>
<dd>
<a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a278c16f4c6de3e85aa9268215a6e95db" title="Pop the Shortest Path First Vertex pointer at the top of the queue.">Pop</a> () </dd></dl>
<dl class="section return"><dt>Returns</dt><dd>The Shortest Path First Vertex pointer at the top of the queue. </dd></dl>

<p class="definition">Definition at line <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00119">119</a> of file <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html">dgr-candidate-queue.cc</a>.</p>

<p class="reference">References <a class="el" href="../../df/d86/dgr-candidate-queue_8h_source.html#l00188">m_candidates</a>.</p>

</div>
</div>
<h2 class="groupheader">Friends And Related Symbol Documentation</h2>
<a id="a428325dcf2c8e3cf0886db75647b7795" name="a428325dcf2c8e3cf0886db75647b7795"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a428325dcf2c8e3cf0886db75647b7795">&#9670;&#160;</a></span>operator&lt;&lt;</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::ostream &amp; operator&lt;&lt; </td>
          <td>(</td>
          <td class="paramtype">std::ostream &amp;&#160;</td>
          <td class="paramname"><em>os</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html">DGRCandidateQueue</a> &amp;&#160;</td>
          <td class="paramname"><em>q</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Stream insertion operator. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">os</td><td>the reference to the output stream </td></tr>
    <tr><td class="paramname">q</td><td>the CandidateQueue </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the reference to the output stream </dd></dl>

<p class="definition">Definition at line <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00049">49</a> of file <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html">dgr-candidate-queue.cc</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a2d91aa78fea568afa265cdbed2f214c4" name="a2d91aa78fea568afa265cdbed2f214c4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2d91aa78fea568afa265cdbed2f214c4">&#9670;&#160;</a></span>m_candidates</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html#a8e75c8bcd203b33ac721416e2640c59f">DGRCandidateList_t</a> ns3::DGRCandidateQueue::m_candidates</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p><a class="el" href="../../dc/d43/classns3_1_1_d_g_r_vertex.html" title="Vertex used in shortest path first (SPF) computations.">DGRVertex</a> candidates. </p>

<p class="definition">Definition at line <a class="el" href="../../df/d86/dgr-candidate-queue_8h_source.html#l00188">188</a> of file <a class="el" href="../../df/d86/dgr-candidate-queue_8h_source.html">dgr-candidate-queue.h</a>.</p>

<p class="reference">Referenced by <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00081">Clear()</a>, <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00131">Empty()</a>, <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00145">Find()</a>, <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00105">Pop()</a>, <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00093">Push()</a>, <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00163">Reorder()</a>, <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00138">Size()</a>, and <a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html#l00119">Top()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>model/<a class="el" href="../../df/d86/dgr-candidate-queue_8h_source.html">dgr-candidate-queue.h</a></li>
<li>model/<a class="el" href="../../da/d53/dgr-candidate-queue_8cc_source.html">dgr-candidate-queue.cc</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="../../d7/d2e/namespacens3.html">ns3</a></li><li class="navelem"><a class="el" href="../../dd/d17/classns3_1_1_d_g_r_candidate_queue.html">DGRCandidateQueue</a></li>
    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.7 </li>
  </ul>
</div>
</body>
</html>
